package com.zzl.myblog.Bean.ResponseBean;

import java.util.List;

/**
 * 首页文章列表
 * API：https://www.wanandroid.com/article/list/0/json
 * 方法：jsonFormat插件自动生成
 * JSON：
 */
public class TopArticleBean {

    /**
     * data : {"curPage":1,"datas":[{"apkLink":"","audit":1,"author":"","canEdit":false,"chapterId":502,"chapterName":"自助","collect":false,"courseId":13,"desc":"","descMd":"","envelopePic":"","fresh":true,"id":16341,"link":"https://juejin.cn/post/6865568507698872328","niceDate":"6小时前","niceShareDate":"6小时前","origin":"","prefix":"","projectLink":"","publishTime":1607305331000,"realSuperChapterId":493,"selfVisible":0,"shareDate":1607305331000,"shareUser":"AboBack","superChapterId":494,"superChapterName":"广场Tab","tags":[],"title":"Android Jetpack组件Lifecycle基本使用和原理分析","type":0,"userId":75,"visible":1,"zan":0},{"apkLink":"","audit":1,"author":"","canEdit":false,"chapterId":502,"chapterName":"自助","collect":false,"courseId":13,"desc":"","descMd":"","envelopePic":"","fresh":true,"id":16339,"link":"https://mp.weixin.qq.com/s/YwZn_v-A3tjvKjvTOD8uSg","niceDate":"6小时前","niceShareDate":"6小时前","origin":"","prefix":"","projectLink":"","publishTime":1607303798000,"realSuperChapterId":493,"selfVisible":0,"shareDate":1607303798000,"shareUser":"飞洋","superChapterId":494,"superChapterName":"广场Tab","tags":[],"title":"🔥&ldquo;终于懂了&ldquo;系列：Jetpack AAC完整解析（二）LiveData 完全掌握！","type":0,"userId":31360,"visible":1,"zan":0},{"apkLink":"","audit":1,"author":"fengyongge","canEdit":false,"chapterId":294,"chapterName":"完整项目","collect":false,"courseId":13,"desc":"玩Android客户端，有文章，有美图，有视频，玩中学Android！","descMd":"","envelopePic":"https://wanandroid.com/blogimgs/cc297996-ec96-41df-bb14-23c1d095c6a8.png","fresh":true,"id":16336,"link":"https://www.wanandroid.com/blog/show/2810","niceDate":"15小时前","niceShareDate":"15小时前","origin":"","prefix":"","projectLink":"https://github.com/fengyongge/WanAndroidClient","publishTime":1607273570000,"realSuperChapterId":293,"selfVisible":0,"shareDate":1607273570000,"shareUser":"","superChapterId":294,"superChapterName":"开源项目主Tab","tags":[{"name":"项目","url":"/project/list/1?cid=294"}],"title":"推荐一个功能齐全的【玩Android客户端】","type":0,"userId":-1,"visible":1,"zan":0},{"apkLink":"","audit":1,"author":"idisfkj","canEdit":false,"chapterId":294,"chapterName":"完整项目","collect":false,"courseId":13,"desc":"android-startup提供一种在应用启动时能够更加简单、高效的方式来初始化组件。开发人员可以使用android-startup来简化启动序列，并显式地设置初始化顺序与组件之间的依赖关系。 与此同时android-startup支持同步与异步等待，并通过有向无环图拓扑排序的方式来保证内部依赖组件的初始化顺序。","descMd":"","envelopePic":"https://wanandroid.com/blogimgs/9eb9b194-4de6-4da6-b818-58dbd6346241.png","fresh":true,"id":16335,"link":"https://www.wanandroid.com/blog/show/2809","niceDate":"15小时前","niceShareDate":"15小时前","origin":"","prefix":"","projectLink":"https://github.com/idisfkj/android-startup","publishTime":1607273088000,"realSuperChapterId":293,"selfVisible":0,"shareDate":1607273088000,"shareUser":"","superChapterId":294,"superChapterName":"开源项目主Tab","tags":[{"name":"项目","url":"/project/list/1?cid=294"}],"title":"启动优化与任务管理：android-startup","type":0,"userId":-1,"visible":1,"zan":0},{"apkLink":"","audit":1,"author":"","canEdit":false,"chapterId":510,"chapterName":"大厂分享","collect":false,"courseId":13,"desc":"","descMd":"","envelopePic":"","fresh":true,"id":16328,"link":"https://zhuanlan.zhihu.com/p/328513587","niceDate":"15小时前","niceShareDate":"17小时前","origin":"","prefix":"","projectLink":"","publishTime":1607272236000,"realSuperChapterId":509,"selfVisible":0,"shareDate":1607267101000,"shareUser":"深红骑士","superChapterId":510,"superChapterName":"大厂对外分享","tags":[],"title":"携程机票 Android Jetpack 与 Kotlin Coroutines 实践","type":0,"userId":29303,"visible":1,"zan":0},{"apkLink":"","audit":1,"author":"","canEdit":false,"chapterId":232,"chapterName":"入门及知识点","collect":false,"courseId":13,"desc":"","descMd":"","envelopePic":"","fresh":true,"id":16332,"link":"https://juejin.cn/post/6902756667893481480","niceDate":"15小时前","niceShareDate":"16小时前","origin":"","prefix":"","projectLink":"","publishTime":1607272222000,"realSuperChapterId":231,"selfVisible":0,"shareDate":1607269718000,"shareUser":"鸿洋","superChapterId":232,"superChapterName":"Kotlin","tags":[],"title":"开始切换到 Kotlin: 谷歌工程师给初学者的知识点总结","type":0,"userId":2,"visible":1,"zan":0},{"apkLink":"","audit":1,"author":"","canEdit":false,"chapterId":198,"chapterName":"基础概念","collect":false,"courseId":13,"desc":"","descMd":"","envelopePic":"","fresh":true,"id":16333,"link":"https://juejin.cn/post/6898705241542737928","niceDate":"15小时前","niceShareDate":"16小时前","origin":"","prefix":"","projectLink":"","publishTime":1607272214000,"realSuperChapterId":167,"selfVisible":0,"shareDate":1607270688000,"shareUser":"HLQ_Struggle","superChapterId":168,"superChapterName":"基础知识","tags":[],"title":"Android Notes｜细数「十大布局」那些事儿","type":0,"userId":21628,"visible":1,"zan":0},{"apkLink":"","audit":1,"author":"","canEdit":false,"chapterId":229,"chapterName":"AOP","collect":false,"courseId":13,"desc":"","descMd":"","envelopePic":"","fresh":true,"id":16334,"link":"https://www.jianshu.com/p/634bfd4a6b90","niceDate":"15小时前","niceShareDate":"16小时前","origin":"","prefix":"","projectLink":"","publishTime":1607272173000,"realSuperChapterId":225,"selfVisible":0,"shareDate":1607270886000,"shareUser":"鸿洋","superChapterId":227,"superChapterName":"注解 & 反射 & AOP","tags":[],"title":"滴滴DoKit-Android核心原理揭秘之AOP字节码实现","type":0,"userId":2,"visible":1,"zan":0},{"apkLink":"","audit":1,"author":"","canEdit":false,"chapterId":502,"chapterName":"自助","collect":false,"courseId":13,"desc":"","descMd":"","envelopePic":"","fresh":true,"id":16327,"link":"https://juejin.cn/post/6902996077549617160","niceDate":"1天前","niceShareDate":"1天前","origin":"","prefix":"","projectLink":"","publishTime":1607229428000,"realSuperChapterId":493,"selfVisible":0,"shareDate":1607229428000,"shareUser":"RicardoMJiang","superChapterId":494,"superChapterName":"广场Tab","tags":[],"title":"【2020年终总结】程序员的三年之痒 | 掘金年度征文","type":0,"userId":13971,"visible":1,"zan":0},{"apkLink":"","audit":1,"author":"","canEdit":false,"chapterId":502,"chapterName":"自助","collect":false,"courseId":13,"desc":"","descMd":"","envelopePic":"","fresh":false,"id":16324,"link":"https://juejin.cn/post/6902693085973577741","niceDate":"1天前","niceShareDate":"1天前","origin":"","prefix":"","projectLink":"","publishTime":1607160001000,"realSuperChapterId":493,"selfVisible":0,"shareDate":1607160001000,"shareUser":"lcfspark","superChapterId":494,"superChapterName":"广场Tab","tags":[],"title":"重学系列---序列化(GSON）","type":0,"userId":28772,"visible":1,"zan":0},{"apkLink":"","audit":1,"author":"yukilzw","canEdit":false,"chapterId":294,"chapterName":"完整项目","collect":false,"courseId":13,"desc":"AI智能弹幕（也称蒙版弹幕）：弹幕浮在视频播放器的上方却永远不会挡住人物。此项目除了会使用Flutter新方案进行跨端实现，同时也会讲解如何将一段任意视频流使用opencv-python处理成蒙版数据源。达成从0到1的前后端AI体系。","descMd":"","envelopePic":"https://wanandroid.com/blogimgs/4fe3a9e9-98b3-4fa3-86c9-0483981de7d6.png","fresh":false,"id":16317,"link":"https://www.wanandroid.com/blog/show/2808","niceDate":"2天前","niceShareDate":"2天前","origin":"","prefix":"","projectLink":"https://github.com/yukilzw/zoe_barrage","publishTime":1607097702000,"realSuperChapterId":293,"selfVisible":0,"shareDate":1607097702000,"shareUser":"","superChapterId":294,"superChapterName":"开源项目主Tab","tags":[{"name":"项目","url":"/project/list/1?cid=294"}],"title":"Flutter &middot; Python AI 弹幕播放器( 弹幕浮在视频播放器的上方却永远不会挡住人物)","type":0,"userId":-1,"visible":1,"zan":0},{"apkLink":"","audit":1,"author":"RobbinM","canEdit":false,"chapterId":294,"chapterName":"完整项目","collect":false,"courseId":13,"desc":"WanAndroid 客户端，采用 Kotlin 语言编写，项目使用  JetPack-MVVM 架构，采用 Retrofit + Coroutines + Coil 等开源框架开发。","descMd":"","envelopePic":"https://wanandroid.com/blogimgs/d40df481-5fc1-4e8c-ba44-054b26596a64.png","fresh":false,"id":16316,"link":"https://www.wanandroid.com/blog/show/2807","niceDate":"2天前","niceShareDate":"2天前","origin":"","prefix":"","projectLink":"https://github.com/RobbinM/WanAndroidMVVM","publishTime":1607092905000,"realSuperChapterId":293,"selfVisible":0,"shareDate":1607092905000,"shareUser":"","superChapterId":294,"superChapterName":"开源项目主Tab","tags":[{"name":"项目","url":"/project/list/1?cid=294"}],"title":"Kotlin 版基于 MVVM + Coroutines + Retrofit 的 WanAndroid 客户端","type":0,"userId":-1,"visible":1,"zan":0},{"apkLink":"","audit":1,"author":"","canEdit":false,"chapterId":478,"chapterName":"DataBinding","collect":false,"courseId":13,"desc":"","descMd":"","envelopePic":"","fresh":false,"id":16303,"link":"https://openxu.blog.csdn.net/article/details/110393163","niceDate":"2020-12-04 13:13","niceShareDate":"2020-12-03 14:46","origin":"","prefix":"","projectLink":"","publishTime":1607058804000,"realSuperChapterId":422,"selfVisible":0,"shareDate":1606977961000,"shareUser":"深红骑士","superChapterId":423,"superChapterName":"Jetpack","tags":[],"title":"DataBinding为null？模块化开发中的DataBinding你需要注意了","type":0,"userId":29303,"visible":1,"zan":0},{"apkLink":"","audit":1,"author":"","canEdit":false,"chapterId":228,"chapterName":"辅助 or 工具类","collect":false,"courseId":13,"desc":"","descMd":"","envelopePic":"","fresh":false,"id":16309,"link":"https://juejin.cn/post/6901950591744868360","niceDate":"2020-12-04 13:13","niceShareDate":"2020-12-04 08:54","origin":"","prefix":"","projectLink":"","publishTime":1607058784000,"realSuperChapterId":156,"selfVisible":0,"shareDate":1607043277000,"shareUser":"goweii","superChapterId":135,"superChapterName":"项目必备","tags":[],"title":"探究 | 如何捕获一个Activity页面上所有的点击行为","type":0,"userId":20382,"visible":1,"zan":0},{"apkLink":"","audit":1,"author":"","canEdit":false,"chapterId":228,"chapterName":"辅助 or 工具类","collect":false,"courseId":13,"desc":"","descMd":"","envelopePic":"","fresh":false,"id":16310,"link":"https://blog.csdn.net/fengyeNom1/article/details/110530339","niceDate":"2020-12-04 13:12","niceShareDate":"2020-12-04 09:37","origin":"","prefix":"","projectLink":"","publishTime":1607058769000,"realSuperChapterId":156,"selfVisible":0,"shareDate":1607045836000,"shareUser":"冯人唐","superChapterId":135,"superChapterName":"项目必备","tags":[],"title":"微信支付返回-1问题","type":0,"userId":2318,"visible":1,"zan":0},{"apkLink":"","audit":1,"author":"鸿洋","canEdit":false,"chapterId":408,"chapterName":"鸿洋","collect":false,"courseId":13,"desc":"","descMd":"","envelopePic":"","fresh":false,"id":16314,"link":"https://mp.weixin.qq.com/s/V1xI2M8AibgB2whHSOTQGQ","niceDate":"2020-12-04 00:00","niceShareDate":"2天前","origin":"","prefix":"","projectLink":"","publishTime":1607011200000,"realSuperChapterId":407,"selfVisible":0,"shareDate":1607091975000,"shareUser":"","superChapterId":408,"superChapterName":"公众号","tags":[{"name":"公众号","url":"/wxarticle/list/408/1"}],"title":"Handler 10问，你顶的住吗？","type":0,"userId":-1,"visible":1,"zan":0},{"apkLink":"","audit":1,"author":"郭霖","canEdit":false,"chapterId":409,"chapterName":"郭霖","collect":false,"courseId":13,"desc":"","descMd":"","envelopePic":"","fresh":false,"id":16315,"link":"https://mp.weixin.qq.com/s/uT91PMGEarCKt-Z6L1jWnA","niceDate":"2020-12-04 00:00","niceShareDate":"2天前","origin":"","prefix":"","projectLink":"","publishTime":1607011200000,"realSuperChapterId":407,"selfVisible":0,"shareDate":1607091990000,"shareUser":"","superChapterId":408,"superChapterName":"公众号","tags":[{"name":"公众号","url":"/wxarticle/list/409/1"}],"title":"浅谈APP的回收和重启机制","type":0,"userId":-1,"visible":1,"zan":0},{"apkLink":"","audit":1,"author":"","canEdit":false,"chapterId":98,"chapterName":"WebView","collect":false,"courseId":13,"desc":"","descMd":"","envelopePic":"","fresh":false,"id":16298,"link":"https://juejin.cn/post/6901487965562732551","niceDate":"2020-12-03 00:33","niceShareDate":"2020-12-03 00:31","origin":"","prefix":"","projectLink":"","publishTime":1606926785000,"realSuperChapterId":34,"selfVisible":0,"shareDate":1606926687000,"shareUser":"鸿洋","superChapterId":98,"superChapterName":"网络访问","tags":[],"title":"Android-WebView还会存在内存泄漏吗？","type":0,"userId":2,"visible":1,"zan":0},{"apkLink":"","audit":1,"author":"","canEdit":false,"chapterId":93,"chapterName":"基础知识","collect":false,"courseId":13,"desc":"","descMd":"","envelopePic":"","fresh":false,"id":16299,"link":"https://juejin.cn/post/6901615804573384718","niceDate":"2020-12-03 00:32","niceShareDate":"2020-12-03 00:32","origin":"","prefix":"","projectLink":"","publishTime":1606926771000,"realSuperChapterId":37,"selfVisible":0,"shareDate":1606926734000,"shareUser":"鸿洋","superChapterId":126,"superChapterName":"自定义控件","tags":[],"title":"线上产品中自定义View应该如何完善？","type":0,"userId":2,"visible":1,"zan":0},{"apkLink":"","audit":1,"author":"Android群英传","canEdit":false,"chapterId":413,"chapterName":"Android群英传","collect":false,"courseId":13,"desc":"","descMd":"","envelopePic":"","fresh":false,"id":16305,"link":"https://mp.weixin.qq.com/s/kqjYN4LqzONkDAHI3rLRTQ","niceDate":"2020-12-03 00:00","niceShareDate":"2020-12-03 23:22","origin":"","prefix":"","projectLink":"","publishTime":1606924800000,"realSuperChapterId":407,"selfVisible":0,"shareDate":1607008960000,"shareUser":"","superChapterId":408,"superChapterName":"公众号","tags":[{"name":"公众号","url":"/wxarticle/list/413/1"}],"title":"JetPack指路明灯&mdash;Navigation","type":0,"userId":-1,"visible":1,"zan":0}],"offset":0,"over":false,"pageCount":482,"size":20,"total":9634}
     * errorCode : 0
     * errorMsg :
     */

    private DataBean data;
    private int errorCode;
    private String errorMsg;

    public DataBean getData() {
        return data;
    }

    public void setData(DataBean data) {
        this.data = data;
    }

    public int getErrorCode() {
        return errorCode;
    }

    public void setErrorCode(int errorCode) {
        this.errorCode = errorCode;
    }

    public String getErrorMsg() {
        return errorMsg;
    }

    public void setErrorMsg(String errorMsg) {
        this.errorMsg = errorMsg;
    }

    public static class DataBean {
        /**
         * curPage : 1
         * datas : [{"apkLink":"","audit":1,"author":"","canEdit":false,"chapterId":502,"chapterName":"自助","collect":false,"courseId":13,"desc":"","descMd":"","envelopePic":"","fresh":true,"id":16341,"link":"https://juejin.cn/post/6865568507698872328","niceDate":"6小时前","niceShareDate":"6小时前","origin":"","prefix":"","projectLink":"","publishTime":1607305331000,"realSuperChapterId":493,"selfVisible":0,"shareDate":1607305331000,"shareUser":"AboBack","superChapterId":494,"superChapterName":"广场Tab","tags":[],"title":"Android Jetpack组件Lifecycle基本使用和原理分析","type":0,"userId":75,"visible":1,"zan":0},{"apkLink":"","audit":1,"author":"","canEdit":false,"chapterId":502,"chapterName":"自助","collect":false,"courseId":13,"desc":"","descMd":"","envelopePic":"","fresh":true,"id":16339,"link":"https://mp.weixin.qq.com/s/YwZn_v-A3tjvKjvTOD8uSg","niceDate":"6小时前","niceShareDate":"6小时前","origin":"","prefix":"","projectLink":"","publishTime":1607303798000,"realSuperChapterId":493,"selfVisible":0,"shareDate":1607303798000,"shareUser":"飞洋","superChapterId":494,"superChapterName":"广场Tab","tags":[],"title":"🔥&ldquo;终于懂了&ldquo;系列：Jetpack AAC完整解析（二）LiveData 完全掌握！","type":0,"userId":31360,"visible":1,"zan":0},{"apkLink":"","audit":1,"author":"fengyongge","canEdit":false,"chapterId":294,"chapterName":"完整项目","collect":false,"courseId":13,"desc":"玩Android客户端，有文章，有美图，有视频，玩中学Android！","descMd":"","envelopePic":"https://wanandroid.com/blogimgs/cc297996-ec96-41df-bb14-23c1d095c6a8.png","fresh":true,"id":16336,"link":"https://www.wanandroid.com/blog/show/2810","niceDate":"15小时前","niceShareDate":"15小时前","origin":"","prefix":"","projectLink":"https://github.com/fengyongge/WanAndroidClient","publishTime":1607273570000,"realSuperChapterId":293,"selfVisible":0,"shareDate":1607273570000,"shareUser":"","superChapterId":294,"superChapterName":"开源项目主Tab","tags":[{"name":"项目","url":"/project/list/1?cid=294"}],"title":"推荐一个功能齐全的【玩Android客户端】","type":0,"userId":-1,"visible":1,"zan":0},{"apkLink":"","audit":1,"author":"idisfkj","canEdit":false,"chapterId":294,"chapterName":"完整项目","collect":false,"courseId":13,"desc":"android-startup提供一种在应用启动时能够更加简单、高效的方式来初始化组件。开发人员可以使用android-startup来简化启动序列，并显式地设置初始化顺序与组件之间的依赖关系。 与此同时android-startup支持同步与异步等待，并通过有向无环图拓扑排序的方式来保证内部依赖组件的初始化顺序。","descMd":"","envelopePic":"https://wanandroid.com/blogimgs/9eb9b194-4de6-4da6-b818-58dbd6346241.png","fresh":true,"id":16335,"link":"https://www.wanandroid.com/blog/show/2809","niceDate":"15小时前","niceShareDate":"15小时前","origin":"","prefix":"","projectLink":"https://github.com/idisfkj/android-startup","publishTime":1607273088000,"realSuperChapterId":293,"selfVisible":0,"shareDate":1607273088000,"shareUser":"","superChapterId":294,"superChapterName":"开源项目主Tab","tags":[{"name":"项目","url":"/project/list/1?cid=294"}],"title":"启动优化与任务管理：android-startup","type":0,"userId":-1,"visible":1,"zan":0},{"apkLink":"","audit":1,"author":"","canEdit":false,"chapterId":510,"chapterName":"大厂分享","collect":false,"courseId":13,"desc":"","descMd":"","envelopePic":"","fresh":true,"id":16328,"link":"https://zhuanlan.zhihu.com/p/328513587","niceDate":"15小时前","niceShareDate":"17小时前","origin":"","prefix":"","projectLink":"","publishTime":1607272236000,"realSuperChapterId":509,"selfVisible":0,"shareDate":1607267101000,"shareUser":"深红骑士","superChapterId":510,"superChapterName":"大厂对外分享","tags":[],"title":"携程机票 Android Jetpack 与 Kotlin Coroutines 实践","type":0,"userId":29303,"visible":1,"zan":0},{"apkLink":"","audit":1,"author":"","canEdit":false,"chapterId":232,"chapterName":"入门及知识点","collect":false,"courseId":13,"desc":"","descMd":"","envelopePic":"","fresh":true,"id":16332,"link":"https://juejin.cn/post/6902756667893481480","niceDate":"15小时前","niceShareDate":"16小时前","origin":"","prefix":"","projectLink":"","publishTime":1607272222000,"realSuperChapterId":231,"selfVisible":0,"shareDate":1607269718000,"shareUser":"鸿洋","superChapterId":232,"superChapterName":"Kotlin","tags":[],"title":"开始切换到 Kotlin: 谷歌工程师给初学者的知识点总结","type":0,"userId":2,"visible":1,"zan":0},{"apkLink":"","audit":1,"author":"","canEdit":false,"chapterId":198,"chapterName":"基础概念","collect":false,"courseId":13,"desc":"","descMd":"","envelopePic":"","fresh":true,"id":16333,"link":"https://juejin.cn/post/6898705241542737928","niceDate":"15小时前","niceShareDate":"16小时前","origin":"","prefix":"","projectLink":"","publishTime":1607272214000,"realSuperChapterId":167,"selfVisible":0,"shareDate":1607270688000,"shareUser":"HLQ_Struggle","superChapterId":168,"superChapterName":"基础知识","tags":[],"title":"Android Notes｜细数「十大布局」那些事儿","type":0,"userId":21628,"visible":1,"zan":0},{"apkLink":"","audit":1,"author":"","canEdit":false,"chapterId":229,"chapterName":"AOP","collect":false,"courseId":13,"desc":"","descMd":"","envelopePic":"","fresh":true,"id":16334,"link":"https://www.jianshu.com/p/634bfd4a6b90","niceDate":"15小时前","niceShareDate":"16小时前","origin":"","prefix":"","projectLink":"","publishTime":1607272173000,"realSuperChapterId":225,"selfVisible":0,"shareDate":1607270886000,"shareUser":"鸿洋","superChapterId":227,"superChapterName":"注解 & 反射 & AOP","tags":[],"title":"滴滴DoKit-Android核心原理揭秘之AOP字节码实现","type":0,"userId":2,"visible":1,"zan":0},{"apkLink":"","audit":1,"author":"","canEdit":false,"chapterId":502,"chapterName":"自助","collect":false,"courseId":13,"desc":"","descMd":"","envelopePic":"","fresh":true,"id":16327,"link":"https://juejin.cn/post/6902996077549617160","niceDate":"1天前","niceShareDate":"1天前","origin":"","prefix":"","projectLink":"","publishTime":1607229428000,"realSuperChapterId":493,"selfVisible":0,"shareDate":1607229428000,"shareUser":"RicardoMJiang","superChapterId":494,"superChapterName":"广场Tab","tags":[],"title":"【2020年终总结】程序员的三年之痒 | 掘金年度征文","type":0,"userId":13971,"visible":1,"zan":0},{"apkLink":"","audit":1,"author":"","canEdit":false,"chapterId":502,"chapterName":"自助","collect":false,"courseId":13,"desc":"","descMd":"","envelopePic":"","fresh":false,"id":16324,"link":"https://juejin.cn/post/6902693085973577741","niceDate":"1天前","niceShareDate":"1天前","origin":"","prefix":"","projectLink":"","publishTime":1607160001000,"realSuperChapterId":493,"selfVisible":0,"shareDate":1607160001000,"shareUser":"lcfspark","superChapterId":494,"superChapterName":"广场Tab","tags":[],"title":"重学系列---序列化(GSON）","type":0,"userId":28772,"visible":1,"zan":0},{"apkLink":"","audit":1,"author":"yukilzw","canEdit":false,"chapterId":294,"chapterName":"完整项目","collect":false,"courseId":13,"desc":"AI智能弹幕（也称蒙版弹幕）：弹幕浮在视频播放器的上方却永远不会挡住人物。此项目除了会使用Flutter新方案进行跨端实现，同时也会讲解如何将一段任意视频流使用opencv-python处理成蒙版数据源。达成从0到1的前后端AI体系。","descMd":"","envelopePic":"https://wanandroid.com/blogimgs/4fe3a9e9-98b3-4fa3-86c9-0483981de7d6.png","fresh":false,"id":16317,"link":"https://www.wanandroid.com/blog/show/2808","niceDate":"2天前","niceShareDate":"2天前","origin":"","prefix":"","projectLink":"https://github.com/yukilzw/zoe_barrage","publishTime":1607097702000,"realSuperChapterId":293,"selfVisible":0,"shareDate":1607097702000,"shareUser":"","superChapterId":294,"superChapterName":"开源项目主Tab","tags":[{"name":"项目","url":"/project/list/1?cid=294"}],"title":"Flutter &middot; Python AI 弹幕播放器( 弹幕浮在视频播放器的上方却永远不会挡住人物)","type":0,"userId":-1,"visible":1,"zan":0},{"apkLink":"","audit":1,"author":"RobbinM","canEdit":false,"chapterId":294,"chapterName":"完整项目","collect":false,"courseId":13,"desc":"WanAndroid 客户端，采用 Kotlin 语言编写，项目使用  JetPack-MVVM 架构，采用 Retrofit + Coroutines + Coil 等开源框架开发。","descMd":"","envelopePic":"https://wanandroid.com/blogimgs/d40df481-5fc1-4e8c-ba44-054b26596a64.png","fresh":false,"id":16316,"link":"https://www.wanandroid.com/blog/show/2807","niceDate":"2天前","niceShareDate":"2天前","origin":"","prefix":"","projectLink":"https://github.com/RobbinM/WanAndroidMVVM","publishTime":1607092905000,"realSuperChapterId":293,"selfVisible":0,"shareDate":1607092905000,"shareUser":"","superChapterId":294,"superChapterName":"开源项目主Tab","tags":[{"name":"项目","url":"/project/list/1?cid=294"}],"title":"Kotlin 版基于 MVVM + Coroutines + Retrofit 的 WanAndroid 客户端","type":0,"userId":-1,"visible":1,"zan":0},{"apkLink":"","audit":1,"author":"","canEdit":false,"chapterId":478,"chapterName":"DataBinding","collect":false,"courseId":13,"desc":"","descMd":"","envelopePic":"","fresh":false,"id":16303,"link":"https://openxu.blog.csdn.net/article/details/110393163","niceDate":"2020-12-04 13:13","niceShareDate":"2020-12-03 14:46","origin":"","prefix":"","projectLink":"","publishTime":1607058804000,"realSuperChapterId":422,"selfVisible":0,"shareDate":1606977961000,"shareUser":"深红骑士","superChapterId":423,"superChapterName":"Jetpack","tags":[],"title":"DataBinding为null？模块化开发中的DataBinding你需要注意了","type":0,"userId":29303,"visible":1,"zan":0},{"apkLink":"","audit":1,"author":"","canEdit":false,"chapterId":228,"chapterName":"辅助 or 工具类","collect":false,"courseId":13,"desc":"","descMd":"","envelopePic":"","fresh":false,"id":16309,"link":"https://juejin.cn/post/6901950591744868360","niceDate":"2020-12-04 13:13","niceShareDate":"2020-12-04 08:54","origin":"","prefix":"","projectLink":"","publishTime":1607058784000,"realSuperChapterId":156,"selfVisible":0,"shareDate":1607043277000,"shareUser":"goweii","superChapterId":135,"superChapterName":"项目必备","tags":[],"title":"探究 | 如何捕获一个Activity页面上所有的点击行为","type":0,"userId":20382,"visible":1,"zan":0},{"apkLink":"","audit":1,"author":"","canEdit":false,"chapterId":228,"chapterName":"辅助 or 工具类","collect":false,"courseId":13,"desc":"","descMd":"","envelopePic":"","fresh":false,"id":16310,"link":"https://blog.csdn.net/fengyeNom1/article/details/110530339","niceDate":"2020-12-04 13:12","niceShareDate":"2020-12-04 09:37","origin":"","prefix":"","projectLink":"","publishTime":1607058769000,"realSuperChapterId":156,"selfVisible":0,"shareDate":1607045836000,"shareUser":"冯人唐","superChapterId":135,"superChapterName":"项目必备","tags":[],"title":"微信支付返回-1问题","type":0,"userId":2318,"visible":1,"zan":0},{"apkLink":"","audit":1,"author":"鸿洋","canEdit":false,"chapterId":408,"chapterName":"鸿洋","collect":false,"courseId":13,"desc":"","descMd":"","envelopePic":"","fresh":false,"id":16314,"link":"https://mp.weixin.qq.com/s/V1xI2M8AibgB2whHSOTQGQ","niceDate":"2020-12-04 00:00","niceShareDate":"2天前","origin":"","prefix":"","projectLink":"","publishTime":1607011200000,"realSuperChapterId":407,"selfVisible":0,"shareDate":1607091975000,"shareUser":"","superChapterId":408,"superChapterName":"公众号","tags":[{"name":"公众号","url":"/wxarticle/list/408/1"}],"title":"Handler 10问，你顶的住吗？","type":0,"userId":-1,"visible":1,"zan":0},{"apkLink":"","audit":1,"author":"郭霖","canEdit":false,"chapterId":409,"chapterName":"郭霖","collect":false,"courseId":13,"desc":"","descMd":"","envelopePic":"","fresh":false,"id":16315,"link":"https://mp.weixin.qq.com/s/uT91PMGEarCKt-Z6L1jWnA","niceDate":"2020-12-04 00:00","niceShareDate":"2天前","origin":"","prefix":"","projectLink":"","publishTime":1607011200000,"realSuperChapterId":407,"selfVisible":0,"shareDate":1607091990000,"shareUser":"","superChapterId":408,"superChapterName":"公众号","tags":[{"name":"公众号","url":"/wxarticle/list/409/1"}],"title":"浅谈APP的回收和重启机制","type":0,"userId":-1,"visible":1,"zan":0},{"apkLink":"","audit":1,"author":"","canEdit":false,"chapterId":98,"chapterName":"WebView","collect":false,"courseId":13,"desc":"","descMd":"","envelopePic":"","fresh":false,"id":16298,"link":"https://juejin.cn/post/6901487965562732551","niceDate":"2020-12-03 00:33","niceShareDate":"2020-12-03 00:31","origin":"","prefix":"","projectLink":"","publishTime":1606926785000,"realSuperChapterId":34,"selfVisible":0,"shareDate":1606926687000,"shareUser":"鸿洋","superChapterId":98,"superChapterName":"网络访问","tags":[],"title":"Android-WebView还会存在内存泄漏吗？","type":0,"userId":2,"visible":1,"zan":0},{"apkLink":"","audit":1,"author":"","canEdit":false,"chapterId":93,"chapterName":"基础知识","collect":false,"courseId":13,"desc":"","descMd":"","envelopePic":"","fresh":false,"id":16299,"link":"https://juejin.cn/post/6901615804573384718","niceDate":"2020-12-03 00:32","niceShareDate":"2020-12-03 00:32","origin":"","prefix":"","projectLink":"","publishTime":1606926771000,"realSuperChapterId":37,"selfVisible":0,"shareDate":1606926734000,"shareUser":"鸿洋","superChapterId":126,"superChapterName":"自定义控件","tags":[],"title":"线上产品中自定义View应该如何完善？","type":0,"userId":2,"visible":1,"zan":0},{"apkLink":"","audit":1,"author":"Android群英传","canEdit":false,"chapterId":413,"chapterName":"Android群英传","collect":false,"courseId":13,"desc":"","descMd":"","envelopePic":"","fresh":false,"id":16305,"link":"https://mp.weixin.qq.com/s/kqjYN4LqzONkDAHI3rLRTQ","niceDate":"2020-12-03 00:00","niceShareDate":"2020-12-03 23:22","origin":"","prefix":"","projectLink":"","publishTime":1606924800000,"realSuperChapterId":407,"selfVisible":0,"shareDate":1607008960000,"shareUser":"","superChapterId":408,"superChapterName":"公众号","tags":[{"name":"公众号","url":"/wxarticle/list/413/1"}],"title":"JetPack指路明灯&mdash;Navigation","type":0,"userId":-1,"visible":1,"zan":0}]
         * offset : 0
         * over : false
         * pageCount : 482
         * size : 20
         * total : 9634
         */

        private int curPage;
        private int offset;
        private boolean over;
        private int pageCount;
        private int size;
        private int total;
        private List<DatasBean> datas;

        public int getCurPage() {
            return curPage;
        }

        public void setCurPage(int curPage) {
            this.curPage = curPage;
        }

        public int getOffset() {
            return offset;
        }

        public void setOffset(int offset) {
            this.offset = offset;
        }

        public boolean isOver() {
            return over;
        }

        public void setOver(boolean over) {
            this.over = over;
        }

        public int getPageCount() {
            return pageCount;
        }

        public void setPageCount(int pageCount) {
            this.pageCount = pageCount;
        }

        public int getSize() {
            return size;
        }

        public void setSize(int size) {
            this.size = size;
        }

        public int getTotal() {
            return total;
        }

        public void setTotal(int total) {
            this.total = total;
        }

        public List<DatasBean> getDatas() {
            return datas;
        }

        public void setDatas(List<DatasBean> datas) {
            this.datas = datas;
        }

        public static class DatasBean {
            /**
             * apkLink :
             * audit : 1
             * author :
             * canEdit : false
             * chapterId : 502
             * chapterName : 自助
             * collect : false
             * courseId : 13
             * desc :
             * descMd :
             * envelopePic :
             * fresh : true
             * id : 16341
             * link : https://juejin.cn/post/6865568507698872328
             * niceDate : 6小时前
             * niceShareDate : 6小时前
             * origin :
             * prefix :
             * projectLink :
             * publishTime : 1607305331000
             * realSuperChapterId : 493
             * selfVisible : 0
             * shareDate : 1607305331000
             * shareUser : AboBack
             * superChapterId : 494
             * superChapterName : 广场Tab
             * tags : []
             * title : Android Jetpack组件Lifecycle基本使用和原理分析
             * type : 0
             * userId : 75
             * visible : 1
             * zan : 0
             */

            private String apkLink;
            private int audit;
            private String author;
            private boolean canEdit;
            private int chapterId;
            private String chapterName;
            private boolean collect;
            private int courseId;
            private String desc;
            private String descMd;
            private String envelopePic;
            private boolean fresh;
            private int id;
            private String link;
            private String niceDate;
            private String niceShareDate;
            private String origin;
            private String prefix;
            private String projectLink;
            private long publishTime;
            private int realSuperChapterId;
            private int selfVisible;
            private long shareDate;
            private String shareUser;
            private int superChapterId;
            private String superChapterName;
            private String title;
            private int type;
            private int userId;
            private int visible;
            private int zan;
            private List<?> tags;

            public String getApkLink() {
                return apkLink;
            }

            public void setApkLink(String apkLink) {
                this.apkLink = apkLink;
            }

            public int getAudit() {
                return audit;
            }

            public void setAudit(int audit) {
                this.audit = audit;
            }

            public String getAuthor() {
                return author;
            }

            public void setAuthor(String author) {
                this.author = author;
            }

            public boolean isCanEdit() {
                return canEdit;
            }

            public void setCanEdit(boolean canEdit) {
                this.canEdit = canEdit;
            }

            public int getChapterId() {
                return chapterId;
            }

            public void setChapterId(int chapterId) {
                this.chapterId = chapterId;
            }

            public String getChapterName() {
                return chapterName;
            }

            public void setChapterName(String chapterName) {
                this.chapterName = chapterName;
            }

            public boolean isCollect() {
                return collect;
            }

            public void setCollect(boolean collect) {
                this.collect = collect;
            }

            public int getCourseId() {
                return courseId;
            }

            public void setCourseId(int courseId) {
                this.courseId = courseId;
            }

            public String getDesc() {
                return desc;
            }

            public void setDesc(String desc) {
                this.desc = desc;
            }

            public String getDescMd() {
                return descMd;
            }

            public void setDescMd(String descMd) {
                this.descMd = descMd;
            }

            public String getEnvelopePic() {
                return envelopePic;
            }

            public void setEnvelopePic(String envelopePic) {
                this.envelopePic = envelopePic;
            }

            public boolean isFresh() {
                return fresh;
            }

            public void setFresh(boolean fresh) {
                this.fresh = fresh;
            }

            public int getId() {
                return id;
            }

            public void setId(int id) {
                this.id = id;
            }

            public String getLink() {
                return link;
            }

            public void setLink(String link) {
                this.link = link;
            }

            public String getNiceDate() {
                return niceDate;
            }

            public void setNiceDate(String niceDate) {
                this.niceDate = niceDate;
            }

            public String getNiceShareDate() {
                return niceShareDate;
            }

            public void setNiceShareDate(String niceShareDate) {
                this.niceShareDate = niceShareDate;
            }

            public String getOrigin() {
                return origin;
            }

            public void setOrigin(String origin) {
                this.origin = origin;
            }

            public String getPrefix() {
                return prefix;
            }

            public void setPrefix(String prefix) {
                this.prefix = prefix;
            }

            public String getProjectLink() {
                return projectLink;
            }

            public void setProjectLink(String projectLink) {
                this.projectLink = projectLink;
            }

            public long getPublishTime() {
                return publishTime;
            }

            public void setPublishTime(long publishTime) {
                this.publishTime = publishTime;
            }

            public int getRealSuperChapterId() {
                return realSuperChapterId;
            }

            public void setRealSuperChapterId(int realSuperChapterId) {
                this.realSuperChapterId = realSuperChapterId;
            }

            public int getSelfVisible() {
                return selfVisible;
            }

            public void setSelfVisible(int selfVisible) {
                this.selfVisible = selfVisible;
            }

            public long getShareDate() {
                return shareDate;
            }

            public void setShareDate(long shareDate) {
                this.shareDate = shareDate;
            }

            public String getShareUser() {
                return shareUser;
            }

            public void setShareUser(String shareUser) {
                this.shareUser = shareUser;
            }

            public int getSuperChapterId() {
                return superChapterId;
            }

            public void setSuperChapterId(int superChapterId) {
                this.superChapterId = superChapterId;
            }

            public String getSuperChapterName() {
                return superChapterName;
            }

            public void setSuperChapterName(String superChapterName) {
                this.superChapterName = superChapterName;
            }

            public String getTitle() {
                return title;
            }

            public void setTitle(String title) {
                this.title = title;
            }

            public int getType() {
                return type;
            }

            public void setType(int type) {
                this.type = type;
            }

            public int getUserId() {
                return userId;
            }

            public void setUserId(int userId) {
                this.userId = userId;
            }

            public int getVisible() {
                return visible;
            }

            public void setVisible(int visible) {
                this.visible = visible;
            }

            public int getZan() {
                return zan;
            }

            public void setZan(int zan) {
                this.zan = zan;
            }

            public List<?> getTags() {
                return tags;
            }

            public void setTags(List<?> tags) {
                this.tags = tags;
            }
        }
    }
}